package com.hulk.ratel.persistence.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.hulk.ratel.persistence.entity.SuperEntity;
import java.time.LocalDate;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author hulk
 * @since 2018-12-13
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_real_merchant_info")
public class RealMerchantInfo extends SuperEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 合作方入驻的商户号
     */
    @TableField("merchant_no")
    private String merchantNo;

    /**
     * 合作方首先入住聚合支付平台， 聚合支付平台通过其中的一个支付机构入到末端支付机构
     */
    @TableField("partner_no")
    private String partnerNo;

    @TableField("merchant_name")
    private String merchantName;

    @TableField("merchant_short_name")
    private String merchantShortName;

    /**
     * VIRTUAL
            REAL
            PARTNET
            BRUSH
            
     */
    @TableField("merchant_type")
    private String merchantType;

    /**
     * PERSON-个人
            ENTERPRISE-企业
     */
    @TableField("merchant_category")
    private String merchantCategory;

    @TableField("merchant_intro")
    private String merchantIntro;

    /**
     * MAIN-总店
            BRANCH-分店
     */
    @TableField("merchant_level")
    private String merchantLevel;

    /**
     * 01-普通
            02-铜牌
            03-银牌
            04-金牌
     */
    @TableField("merchant_grade")
    private String merchantGrade;

    @TableField("merchant_logo")
    private String merchantLogo;

    @TableField("merchant_license_no")
    private String merchantLicenseNo;

    @TableField("merchant_license_expried")
    private String merchantLicenseExpried;

    @TableField("merchant_license_pic")
    private String merchantLicensePic;

    @TableField("merchant_tax_no")
    private String merchantTaxNo;

    @TableField("merchant_tax_pic")
    private String merchantTaxPic;

    @TableField("merchant_code")
    private String merchantCode;

    /**
     * ("01","启用"),
            ("02","停用"),
            ("03","初始"),
            ("04","处理中"),
            ("99","超时"),
            ("05","注销"),
            ("10","已修改"),
            10状态只能发送到首次默认的支付机构去支付
            
     */
    @TableField("merchant_status")
    private String merchantStatus;

    @TableField("merchant_address")
    private String merchantAddress;

    @TableField("area_code")
    private String areaCode;

    @TableField("city_code")
    private String cityCode;

    @TableField("province_code")
    private String provinceCode;

    @TableField("zip_code")
    private String zipCode;

    @TableField("service_phone")
    private String servicePhone;

    @TableField("contact_type")
    private String contactType;

    @TableField("contact_name")
    private String contactName;

    @TableField("contact_mobile")
    private String contactMobile;

    @TableField("contact_fax")
    private String contactFax;

    @TableField("contact_email")
    private String contactEmail;

    @TableField("drawfee")
    private BigDecimal drawfee;

    @TableField("traderate")
    private BigDecimal traderate;

    @TableField("f_linkman_name")
    private String fLinkmanName;

    @TableField("f_linkman_phone")
    private String fLinkmanPhone;

    @TableField("f_linkman_fax")
    private String fLinkmanFax;

    @TableField("f_linkman_email")
    private String fLinkmanEmail;

    @TableField("remark")
    private String remark;

    @TableField("start_date")
    private LocalDate startDate;

    @TableField("expiry_date")
    private LocalDate expiryDate;

    @TableField("open_hours")
    private String openHours;

    @TableField("license_type")
    private String licenseType;

    @TableField("license_end_date")
    private String licenseEndDate;

    @TableField("tax_begin_date")
    private String taxBeginDate;

    @TableField("tax_end_date")
    private String taxEndDate;

    @TableField("legal_gender")
    private String legalGender;

    @TableField("legal_certificate_type")
    private String legalCertificateType;

    @TableField("legal_certificate_begin_date")
    private String legalCertificateBeginDate;

    @TableField("legal_certificate_end_date")
    private String legalCertificateEndDate;

    @TableField("legal_mobile")
    private String legalMobile;

    @TableField("legal_email")
    private String legalEmail;

    @TableField("legal_job")
    private String legalJob;

    @TableField("legal_address")
    private String legalAddress;

    @TableField("merchant_deal_type")
    private String merchantDealType;

    @TableField("legal_certificate_no")
    private String legalCertificateNo;

    @TableField("legal_person_head_pic")
    private String legalPersonHeadPic;

    @TableField("legal_person_name")
    private String legalPersonName;

    @TableField("legal_certificate_positive_pic")
    private String legalCertificatePositivePic;

    @TableField("legal_certificate_back_pic")
    private String legalCertificateBackPic;

    @TableField("license_pic")
    private String licensePic;

    /**
     * PUBLIC-对公
            PRIVATE-对私
     */
    @TableField("account_type")
    private String accountType;

    @TableField("account_no")
    private String accountNo;

    @TableField("account_name")
    private String accountName;

    @TableField("bank_name")
    private String bankName;

    @TableField("bank_card_mobile")
    private String bankCardMobile;

    @TableField("bank_card_address")
    private String bankCardAddress;

    @TableField("bank_branch_name")
    private String bankBranchName;

    @TableField("bank_branch_no")
    private String bankBranchNo;

    @TableField("bank_no")
    private String bankNo;

    @TableField("bank_branch_province")
    private String bankBranchProvince;

    @TableField("bank_branch_city")
    private String bankBranchCity;

    @TableField("bank_cardcert_type")
    private String bankCardcertType;

    @TableField("bank_cardcert_no")
    private String bankCardcertNo;

    /**
     * LEGAL：(法人)；
            CONTROLLER：(实际控制人)；
            AGENT：(代理人)；
            OTHER：(其他)
     */
    @TableField("principal_type")
    private String principalType;

    @TableField("principal_head_pic")
    private String principalHeadPic;

    @TableField("principal_email")
    private String principalEmail;

    @TableField("principal_mobile")
    private String principalMobile;

    @TableField("principal_cert_type")
    private String principalCertType;

    @TableField("principal_cert_no")
    private String principalCertNo;

    @TableField("principal_cert_positive")
    private String principalCertPositive;

    @TableField("principal_cert_back")
    private String principalCertBack;

    @TableField("principal_cert_begin_date")
    private String principalCertBeginDate;

    @TableField("principal_cert_end_date")
    private String principalCertEndDate;

    @TableField("principal_person")
    private String principalPerson;

    /**
     * F-女
            M-男
     */
    @TableField("principal_gender")
    private String principalGender;

    @TableField("org_cert_code")
    private String orgCertCode;

    @TableField("org_cert_pic")
    private String orgCertPic;

    @TableField("industry_license_pic")
    private String industryLicensePic;

    @TableField("business_select")
    private String businessSelect;

    @TableField("created_by")
    private String createdBy;


    @TableField("audited_time")
    private LocalDateTime auditedTime;

    /**
     * N-未审核
            Y-已审核
            U-已修改
     */
    @TableField("audited_flag")
    private String auditedFlag;

    @TableField("audited_by")
    private String auditedBy;

    @TableField("updated_by")
    private String updatedBy;



    @TableField("archived_time")
    private LocalDateTime archivedTime;

    /**
     * N-未归档
            Y-已归档
     */
    @TableField("archived_flag")
    private String archivedFlag;



    @TableField("rsv1")
    private String rsv1;

    @TableField("rsv2")
    private String rsv2;

    @TableField("rsv3")
    private String rsv3;


    public static final String MERCHANT_NO = "merchant_no";

    public static final String PARTNER_NO = "partner_no";

    public static final String MERCHANT_NAME = "merchant_name";

    public static final String MERCHANT_SHORT_NAME = "merchant_short_name";

    public static final String MERCHANT_TYPE = "merchant_type";

    public static final String MERCHANT_CATEGORY = "merchant_category";

    public static final String MERCHANT_INTRO = "merchant_intro";

    public static final String MERCHANT_LEVEL = "merchant_level";

    public static final String MERCHANT_GRADE = "merchant_grade";

    public static final String MERCHANT_LOGO = "merchant_logo";

    public static final String MERCHANT_LICENSE_NO = "merchant_license_no";

    public static final String MERCHANT_LICENSE_EXPRIED = "merchant_license_expried";

    public static final String MERCHANT_LICENSE_PIC = "merchant_license_pic";

    public static final String MERCHANT_TAX_NO = "merchant_tax_no";

    public static final String MERCHANT_TAX_PIC = "merchant_tax_pic";

    public static final String MERCHANT_CODE = "merchant_code";

    public static final String MERCHANT_STATUS = "merchant_status";

    public static final String MERCHANT_ADDRESS = "merchant_address";

    public static final String AREA_CODE = "area_code";

    public static final String CITY_CODE = "city_code";

    public static final String PROVINCE_CODE = "province_code";

    public static final String ZIP_CODE = "zip_code";

    public static final String SERVICE_PHONE = "service_phone";

    public static final String CONTACT_TYPE = "contact_type";

    public static final String CONTACT_NAME = "contact_name";

    public static final String CONTACT_MOBILE = "contact_mobile";

    public static final String CONTACT_FAX = "contact_fax";

    public static final String CONTACT_EMAIL = "contact_email";

    public static final String DRAWFEE = "drawfee";

    public static final String TRADERATE = "traderate";

    public static final String F_LINKMAN_NAME = "f_linkman_name";

    public static final String F_LINKMAN_PHONE = "f_linkman_phone";

    public static final String F_LINKMAN_FAX = "f_linkman_fax";

    public static final String F_LINKMAN_EMAIL = "f_linkman_email";

    public static final String REMARK = "remark";

    public static final String START_DATE = "start_date";

    public static final String EXPIRY_DATE = "expiry_date";

    public static final String OPEN_HOURS = "open_hours";

    public static final String LICENSE_TYPE = "license_type";

    public static final String LICENSE_END_DATE = "license_end_date";

    public static final String TAX_BEGIN_DATE = "tax_begin_date";

    public static final String TAX_END_DATE = "tax_end_date";

    public static final String LEGAL_GENDER = "legal_gender";

    public static final String LEGAL_CERTIFICATE_TYPE = "legal_certificate_type";

    public static final String LEGAL_CERTIFICATE_BEGIN_DATE = "legal_certificate_begin_date";

    public static final String LEGAL_CERTIFICATE_END_DATE = "legal_certificate_end_date";

    public static final String LEGAL_MOBILE = "legal_mobile";

    public static final String LEGAL_EMAIL = "legal_email";

    public static final String LEGAL_JOB = "legal_job";

    public static final String LEGAL_ADDRESS = "legal_address";

    public static final String MERCHANT_DEAL_TYPE = "merchant_deal_type";

    public static final String LEGAL_CERTIFICATE_NO = "legal_certificate_no";

    public static final String LEGAL_PERSON_HEAD_PIC = "legal_person_head_pic";

    public static final String LEGAL_PERSON_NAME = "legal_person_name";

    public static final String LEGAL_CERTIFICATE_POSITIVE_PIC = "legal_certificate_positive_pic";

    public static final String LEGAL_CERTIFICATE_BACK_PIC = "legal_certificate_back_pic";

    public static final String LICENSE_PIC = "license_pic";

    public static final String ACCOUNT_TYPE = "account_type";

    public static final String ACCOUNT_NO = "account_no";

    public static final String ACCOUNT_NAME = "account_name";

    public static final String BANK_NAME = "bank_name";

    public static final String BANK_CARD_MOBILE = "bank_card_mobile";

    public static final String BANK_CARD_ADDRESS = "bank_card_address";

    public static final String BANK_BRANCH_NAME = "bank_branch_name";

    public static final String BANK_BRANCH_NO = "bank_branch_no";

    public static final String BANK_NO = "bank_no";

    public static final String BANK_BRANCH_PROVINCE = "bank_branch_province";

    public static final String BANK_BRANCH_CITY = "bank_branch_city";

    public static final String BANK_CARDCERT_TYPE = "bank_cardcert_type";

    public static final String BANK_CARDCERT_NO = "bank_cardcert_no";

    public static final String PRINCIPAL_TYPE = "principal_type";

    public static final String PRINCIPAL_HEAD_PIC = "principal_head_pic";

    public static final String PRINCIPAL_EMAIL = "principal_email";

    public static final String PRINCIPAL_MOBILE = "principal_mobile";

    public static final String PRINCIPAL_CERT_TYPE = "principal_cert_type";

    public static final String PRINCIPAL_CERT_NO = "principal_cert_no";

    public static final String PRINCIPAL_CERT_POSITIVE = "principal_cert_positive";

    public static final String PRINCIPAL_CERT_BACK = "principal_cert_back";

    public static final String PRINCIPAL_CERT_BEGIN_DATE = "principal_cert_begin_date";

    public static final String PRINCIPAL_CERT_END_DATE = "principal_cert_end_date";

    public static final String PRINCIPAL_PERSON = "principal_person";

    public static final String PRINCIPAL_GENDER = "principal_gender";

    public static final String ORG_CERT_CODE = "org_cert_code";

    public static final String ORG_CERT_PIC = "org_cert_pic";

    public static final String INDUSTRY_LICENSE_PIC = "industry_license_pic";

    public static final String BUSINESS_SELECT = "business_select";

    public static final String CREATED_BY = "created_by";


    public static final String AUDITED_TIME = "audited_time";

    public static final String AUDITED_FLAG = "audited_flag";

    public static final String AUDITED_BY = "audited_by";

    public static final String UPDATED_BY = "updated_by";



    public static final String ARCHIVED_TIME = "archived_time";

    public static final String ARCHIVED_FLAG = "archived_flag";





    public static final String RSV1 = "rsv1";

    public static final String RSV2 = "rsv2";

    public static final String RSV3 = "rsv3";

}
